struct _WMI_LOGGER_CONTEXT// Size=0x330
{
    unsigned long LoggerId;// Offset=0x0 Size=0x4
    unsigned long BufferSize;// Offset=0x4 Size=0x4
    unsigned long MaximumEventSize;// Offset=0x8 Size=0x4
    long CollectionOn;// Offset=0xc Size=0x4
    unsigned long LoggerMode;// Offset=0x10 Size=0x4
    long AcceptNewEvents;// Offset=0x14 Size=0x4
    long long  ( * GetCpuClock)();// Offset=0x18 Size=0x8
    union _LARGE_INTEGER StartTime;// Offset=0x20 Size=0x8
    void * LogFileHandle;// Offset=0x28 Size=0x8
    struct _ETHREAD * LoggerThread;// Offset=0x30 Size=0x8
    long LoggerStatus;// Offset=0x38 Size=0x4
    void * NBQHead;// Offset=0x40 Size=0x8
    void * OverflowNBQHead;// Offset=0x48 Size=0x8
    union _SLIST_HEADER QueueBlockFreeList;// Offset=0x50 Size=0x10
    struct _LIST_ENTRY GlobalList;// Offset=0x60 Size=0x10
    struct _WMI_BUFFER_HEADER * BatchedBufferList;// Offset=0x70 Size=0x8
    struct _EX_FAST_REF CurrentBuffer;// Offset=0x70 Size=0x8
    struct _UNICODE_STRING LoggerName;// Offset=0x78 Size=0x10
    struct _UNICODE_STRING LogFileName;// Offset=0x88 Size=0x10
    struct _UNICODE_STRING LogFilePattern;// Offset=0x98 Size=0x10
    struct _UNICODE_STRING NewLogFileName;// Offset=0xa8 Size=0x10
    unsigned long ClockType;// Offset=0xb8 Size=0x4
    unsigned long MaximumFileSize;// Offset=0xbc Size=0x4
    unsigned long LastFlushedBuffer;// Offset=0xc0 Size=0x4
    unsigned long FlushTimer;// Offset=0xc4 Size=0x4
    unsigned long FlushThreshold;// Offset=0xc8 Size=0x4
    union _LARGE_INTEGER ByteOffset;// Offset=0xd0 Size=0x8
    unsigned long MinimumBuffers;// Offset=0xd8 Size=0x4
    long BuffersAvailable;// Offset=0xdc Size=0x4
    long NumberOfBuffers;// Offset=0xe0 Size=0x4
    unsigned long MaximumBuffers;// Offset=0xe4 Size=0x4
    unsigned long EventsLost;// Offset=0xe8 Size=0x4
    unsigned long BuffersWritten;// Offset=0xec Size=0x4
    unsigned long LogBuffersLost;// Offset=0xf0 Size=0x4
    unsigned long RealTimeBuffersDelivered;// Offset=0xf4 Size=0x4
    unsigned long RealTimeBuffersLost;// Offset=0xf8 Size=0x4
    long * SequencePtr;// Offset=0x100 Size=0x8
    unsigned long LocalSequence;// Offset=0x108 Size=0x4
    struct _GUID InstanceGuid;// Offset=0x10c Size=0x10
    long FileCounter;// Offset=0x11c Size=0x4
    void  ( * BufferCallback)(struct _WMI_BUFFER_HEADER * ,void * );// Offset=0x120 Size=0x8
    enum _POOL_TYPE PoolType;// Offset=0x128 Size=0x4
    struct _ETW_REF_CLOCK ReferenceTime;// Offset=0x130 Size=0x10
    struct _LIST_ENTRY Consumers;// Offset=0x140 Size=0x10
    unsigned long NumConsumers;// Offset=0x150 Size=0x4
    struct _ETW_REALTIME_CONSUMER * TransitionConsumer;// Offset=0x158 Size=0x8
    void * RealtimeLogfileHandle;// Offset=0x160 Size=0x8
    struct _UNICODE_STRING RealtimeLogfileName;// Offset=0x168 Size=0x10
    union _LARGE_INTEGER RealtimeWriteOffset;// Offset=0x178 Size=0x8
    union _LARGE_INTEGER RealtimeReadOffset;// Offset=0x180 Size=0x8
    union _LARGE_INTEGER RealtimeLogfileSize;// Offset=0x188 Size=0x8
    unsigned long long RealtimeLogfileUsage;// Offset=0x190 Size=0x8
    unsigned long long RealtimeMaximumFileSize;// Offset=0x198 Size=0x8
    unsigned long RealtimeBuffersSaved;// Offset=0x1a0 Size=0x4
    struct _ETW_REF_CLOCK RealtimeReferenceTime;// Offset=0x1a8 Size=0x10
    enum _ETW_RT_EVENT_LOSS NewRTEventsLost;// Offset=0x1b8 Size=0x4
    struct _KEVENT LoggerEvent;// Offset=0x1c0 Size=0x18
    struct _KEVENT FlushEvent;// Offset=0x1d8 Size=0x18
    struct _KTIMER FlushTimeOutTimer;// Offset=0x1f0 Size=0x40
    struct _KDPC FlushDpc;// Offset=0x230 Size=0x40
    struct _KMUTANT LoggerMutex;// Offset=0x270 Size=0x38
    struct _EX_PUSH_LOCK LoggerLock;// Offset=0x2a8 Size=0x8
    unsigned long long BufferListSpinLock;// Offset=0x2b0 Size=0x8
    struct _EX_PUSH_LOCK BufferListPushLock;// Offset=0x2b0 Size=0x8
    struct _SECURITY_CLIENT_CONTEXT ClientSecurityContext;// Offset=0x2b8 Size=0x48
    struct _EX_FAST_REF SecurityDescriptor;// Offset=0x300 Size=0x8
    long long BufferSequenceNumber;// Offset=0x308 Size=0x8
    unsigned long Flags;// Offset=0x310 Size=0x4
    unsigned long Persistent:1;// Offset=0x310 Size=0x4 BitOffset=0x0 BitSize=0x1
    unsigned long AutoLogger:1;// Offset=0x310 Size=0x4 BitOffset=0x1 BitSize=0x1
    unsigned long FsReady:1;// Offset=0x310 Size=0x4 BitOffset=0x2 BitSize=0x1
    unsigned long RealTime:1;// Offset=0x310 Size=0x4 BitOffset=0x3 BitSize=0x1
    unsigned long Wow:1;// Offset=0x310 Size=0x4 BitOffset=0x4 BitSize=0x1
    unsigned long KernelTrace:1;// Offset=0x310 Size=0x4 BitOffset=0x5 BitSize=0x1
    unsigned long NoMoreEnable:1;// Offset=0x310 Size=0x4 BitOffset=0x6 BitSize=0x1
    unsigned long StackTracing:1;// Offset=0x310 Size=0x4 BitOffset=0x7 BitSize=0x1
    unsigned long ErrorLogged:1;// Offset=0x310 Size=0x4 BitOffset=0x8 BitSize=0x1
    unsigned long RealtimeLoggerContextFreed:1;// Offset=0x310 Size=0x4 BitOffset=0x9 BitSize=0x1
    unsigned long RequestFlag;// Offset=0x314 Size=0x4
    unsigned long RequestNewFie:1;// Offset=0x314 Size=0x4 BitOffset=0x0 BitSize=0x1
    unsigned long RequestUpdateFile:1;// Offset=0x314 Size=0x4 BitOffset=0x1 BitSize=0x1
    unsigned long RequestFlush:1;// Offset=0x314 Size=0x4 BitOffset=0x2 BitSize=0x1
    unsigned long RequestDisableRealtime:1;// Offset=0x314 Size=0x4 BitOffset=0x3 BitSize=0x1
    unsigned long RequestDisconnectConsumer:1;// Offset=0x314 Size=0x4 BitOffset=0x4 BitSize=0x1
    unsigned long RequestConnectConsumer:1;// Offset=0x314 Size=0x4 BitOffset=0x5 BitSize=0x1
    struct _RTL_BITMAP HookIdMap;// Offset=0x318 Size=0x10
};